{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<p align=\"center\">\n",
    "    <img src=\"https://github.com/GeostatsGuy/GeostatsPy/blob/master/TCG_color_logo.png?raw=true\" width=\"220\" height=\"240\" />\n",
    "\n",
    "</p>\n",
    "\n",
    "## Subsurface Data Analytics \n",
    "\n",
    "### The Lasso for Subsurface Data Analytics in Python \n",
    "\n",
    "\n",
    "#### Michael Pyrcz, Associate Professor, University of Texas at Austin \n",
    "\n",
    "##### [Twitter](https://twitter.com/geostatsguy) | [GitHub](https://github.com/GeostatsGuy) | [Website](http://michaelpyrcz.com) | [GoogleScholar](https://scholar.google.com/citations?user=QVZ20eQAAAAJ&hl=en&oi=ao) | [Book](https://www.amazon.com/Geostatistical-Reservoir-Modeling-Michael-Pyrcz/dp/0199731446) | [YouTube](https://www.youtube.com/channel/UCLqEr-xV-ceHdXXXrTId5ig)  | [LinkedIn](https://www.linkedin.com/in/michael-pyrcz-61a648a1)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "\n",
    "### PGE 383 Exercise: The Lasso for Subsurface Modeling in Python \n",
    "\n",
    "Here's a simple workflow, demonstration of the lasso for regression for subsurface modeling workflows. This should help you get started with building subsurface models with data analytics and machine learning. Here's some basic details about the lasso. \n",
    "\n",
    "The lasso is an extension of linear regresion, and is closely related to ridge regression so let's review some basic details about linear regression first and then related the lasso to ridge regression.\n",
    "\n",
    "Here's complete workflows and more details on these:\n",
    "\n",
    "[Linear Regression](https://github.com/GeostatsGuy/PythonNumericalDemos/blob/master/SubsurfaceDataAnalytics_LinearRegression.ipynb)\n",
    "\n",
    "[Ridge Regression](https://github.com/GeostatsGuy/PythonNumericalDemos/blob/master/SubsurfaceDataAnalytics_RidgeRegression.ipynb)\n",
    "\n",
    "\n",
    "#### Linear Regression\n",
    "\n",
    "Linear regression for prediction.  Here are some key aspects of linear regression:\n",
    "\n",
    "**Parametric Model**\n",
    "\n",
    "* the fit model is a simple weighted linear additive model based on all the available features, $x_1,\\ldots,x_m$.\n",
    "\n",
    "* the parametric model takes the form of: \n",
    "\n",
    "\\begin{equation}\n",
    "y = \\sum_{\\alpha = 1}^m b_{\\alpha} x_{\\alpha} + b_0\n",
    "\\end{equation}\n",
    "\n",
    "**Least Squares**\n",
    "\n",
    "* least squares optimization is applied to select the model parameters, $b_1,\\ldots,b_m,b_0$ \n",
    "\n",
    "* we minize the error, residual sum of squares (RSS) over the training data: \n",
    "\n",
    "\\begin{equation}\n",
    "RSS = \\sum_{i=1}^n (y_i - \\left(\\sum_{\\alpha = 1}^m b_{\\alpha} x_{\\alpha} + b_0)\\right)^2\n",
    "\\end{equation}\n",
    "\n",
    "* this could be simplified as the sum of square error over the training data, \n",
    "\n",
    "\\begin{equation}\n",
    "\\sum_{i=1}^n (\\Delta y_i)^2\n",
    "\\end{equation}\n",
    "\n",
    "**Assumptions**\n",
    "\n",
    "* **Error-free** - predictor variables are error free, not random variables \n",
    "* **Linearity** - response is linear combination of feature(s)\n",
    "* **Constant Variance** - error in response is constant over predictor(s) value\n",
    "* **Independence of Error** - error in response are uncorrelated with each other\n",
    "* **No multicollinearity** - none of the features are redundant with other features \n",
    "\n",
    "#### Other Resources\n",
    "\n",
    "In $Python$, the $SciPy$ package, specifically the $Stats$ functions (https://docs.scipy.org/doc/scipy/reference/stats.html) provide excellent tools for efficient use of statistics.  \n",
    "I have previously provided linear regression demonstration in R:\n",
    "\n",
    "1. [R](https://github.com/GeostatsGuy/geostatsr/blob/master/linear_regression_demo_v2.R)\n",
    "2. [R Markdown](https://github.com/GeostatsGuy/geostatsr/blob/master/linear_regression_demo_v2.Rmd) \n",
    "3. [knit as an HTML document](https://github.com/GeostatsGuy/geostatsr/blob/master/linear_regression_demo_v2.html) \n",
    "\n",
    "#### The Lasso\n",
    "\n",
    "With the lasso we add a hyperparameter, $\\lambda$, to our minimization, with a shrinkage penalty term.\n",
    "\n",
    "\\begin{equation}\n",
    "\\sum_{i=1}^n \\left(y_i - \\left(\\sum_{\\alpha = 1}^m b_{\\alpha} x_{\\alpha} + b_0 \\right) \\right)^2 + \\lambda \\sum_{j=1}^m |b_{\\alpha}|\n",
    "\\end{equation}\n",
    "\n",
    "As a result the lasso has 2 criteria:\n",
    "\n",
    "1. set the model parameters to minimize the error with training data\n",
    "\n",
    "2. shrink the estimates of the slope parameters towards zero. Note: the intercept is not affected by the lambda, $\\lambda$, hyperparameter.\n",
    "\n",
    "Note the only difference between the lasso and ridge regression is:\n",
    "\n",
    "* for the lasso the shrinkage term is posed as an $\\ell_1$ penalty ($\\lambda \\sum_{\\alpha=1}^m |b_{\\alpha}|$) \n",
    "\n",
    "* for ridge regression the shrinkage term is posed as an $\\ell_2$ penalty ($\\lambda \\sum_{\\alpha=1}^m \\left(b_{\\alpha}\\right)^2$).\n",
    "\n",
    "While both ridge regression and the lasso shrink the model parameters ($b_{\\alpha}, \\alpha = 1,\\ldots,m$) towards zero:\n",
    "\n",
    "* the lasso parameters reach zero at different rates for each predictor feature as the lambda, $\\lambda$, hyperparameter increases. \n",
    "\n",
    "* as a result the lasso provides a method for feature ranking and selection!\n",
    "\n",
    "The lambda, $\\lambda$, hyperparameter controls the degree of fit of the model and may be related to the model variance and bias trade-off.\n",
    "\n",
    "* for $\\lambda \\rightarrow 0$ the prediction model approaches linear regression, there is lower model bias, but the model variance is higher\n",
    "\n",
    "* as $\\lambda$ increases the model variance decreases and the model bias increases\n",
    "\n",
    "* for $\\lambda \\rightarrow \\infty$ the coefficients all become 0.0 and the model is the global mean\n",
    "\n",
    "#### Workflow Goals\n",
    "\n",
    "Learn the basics of the lasso in Python to for analysis, modeling and prediction of porosity from density. This includes:\n",
    "\n",
    "* Basic Python workflows and data preparation\n",
    "\n",
    "* Training / fitting a the lasso model and comparison to ridge regression\n",
    "\n",
    "* Checking the model and learning about the impact of hyperparameters\n",
    "\n",
    "#### Objective \n",
    "\n",
    "In the PGE 383: Stochastic Subsurface Modeling class I want to provide hands-on experience with building subsurface modeling workflows. Python provides an excellent vehicle to accomplish this. I have coded a package called GeostatsPy with GSLIB: Geostatistical Library (Deutsch and Journel, 1998) functionality that provides basic building blocks for building subsurface modeling workflows. \n",
    "\n",
    "The objective is to remove the hurdles of subsurface modeling workflow construction by providing building blocks and sufficient examples. This is not a coding class per se, but we need the ability to 'script' workflows working with numerical methods.    \n",
    "\n",
    "#### Getting Started\n",
    "\n",
    "Here's the steps to get setup in Python with the GeostatsPy package:\n",
    "\n",
    "1. Install Anaconda 3 on your machine (https://www.anaconda.com/download/). \n",
    "2. From Anaconda Navigator (within Anaconda3 group), go to the environment tab, click on base (root) green arrow and open a terminal. \n",
    "3. In the terminal type: pip install geostatspy. \n",
    "4. Open Jupyter and in the top block get started by copy and pasting the code block below from this Jupyter Notebook to start using the geostatspy functionality. \n",
    "\n",
    "There are examples below with these functions. You can go here to see a list of the available functions, https://git.io/fh4eX, other example workflows and source code. \n",
    "\n",
    "#### Import Required Packages\n",
    "\n",
    "Let's import the GeostatsPy package."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os                                                   # to set current working directory \n",
    "import numpy as np                                          # arrays and matrix math\n",
    "import scipy.stats as st                                    # statistical methods\n",
    "import pandas as pd                                         # DataFrames\n",
    "import matplotlib.pyplot as plt                             # for plotting\n",
    "from sklearn.metrics import mean_squared_error, r2_score    # specific measures to check our models\n",
    "from sklearn.linear_model import Ridge                      # ridge regression implemented in scikit learn\n",
    "from sklearn.linear_model import Lasso                      # the lasso implemented in scikit learn\n",
    "from sklearn.model_selection import cross_val_score         # multi-processor K-fold crossvalidation\n",
    "from sklearn.model_selection import train_test_split        # train and test split\n",
    "from sklearn.preprocessing import StandardScaler            # standardize the features\n",
    "from sklearn import metrics                                 # measures to check our models\n",
    "from sklearn.linear_model import LinearRegression           # linear regression implemented in scikit learn"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "If you get a package import error, you may have to first install some of these packages. This can usually be accomplished by opening up a command window on Windows and then typing 'python -m pip install [package-name]'. More assistance is available with the respective package docs.  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Set the working directory\n",
    "\n",
    "I always like to do this so I don't lose files and to simplify subsequent read and writes (avoid including the full address each time).  Also, in this case make sure to place the required (see below) data file in this working directory.  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "#os.chdir(\"C:\\PGE383\")                                       # set the working directory"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Loading Data\n",
    "\n",
    "Let's load the provided dataset. 'Density_Por_data.csv' is available at https://github.com/GeostatsGuy/GeoDataSets. It is a comma delimited file with 20 density ($\\frac{g}{cm^3}$) and porosity (as a fraction) measures from the subsurface. We load the data file with the pandas 'read_csv' function into a data frame we called 'df' and then separate it into train and test datasets.  The smaples are in random order so we just split the dataset at the 80th sample.  We preview each with the head function from Pandas DataFrames."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Density</th>\n",
       "      <th>Porosity</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1.281391</td>\n",
       "      <td>16.610982</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1.404932</td>\n",
       "      <td>13.668073</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2.346926</td>\n",
       "      <td>9.590092</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1.348847</td>\n",
       "      <td>15.877907</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2.331653</td>\n",
       "      <td>4.968240</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    Density   Porosity\n",
       "0  1.281391  16.610982\n",
       "1  1.404932  13.668073\n",
       "2  2.346926   9.590092\n",
       "3  1.348847  15.877907\n",
       "4  2.331653   4.968240"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#df = pd.read_csv(\"Density_Por_data.csv\")                    # read a .csv file in as a DataFrame\n",
    "df = pd.read_csv(r\"https://raw.githubusercontent.com/GeostatsGuy/GeoDataSets/master/Density_Por_data.csv\")\n",
    "df_train = df.iloc[0:80,:]                                  # extract a training set, note samples are random ordered\n",
    "df_train.head()                                             # preview the DataFrame"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Density</th>\n",
       "      <th>Porosity</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>80</th>\n",
       "      <td>1.750352</td>\n",
       "      <td>11.325941</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>81</th>\n",
       "      <td>1.666285</td>\n",
       "      <td>15.609445</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>82</th>\n",
       "      <td>1.466517</td>\n",
       "      <td>17.066529</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>83</th>\n",
       "      <td>1.650921</td>\n",
       "      <td>13.876841</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>84</th>\n",
       "      <td>0.996736</td>\n",
       "      <td>20.964941</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     Density   Porosity\n",
       "80  1.750352  11.325941\n",
       "81  1.666285  15.609445\n",
       "82  1.466517  17.066529\n",
       "83  1.650921  13.876841\n",
       "84  0.996736  20.964941"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_test = df.iloc[80:]                                      # extract a testing set, note samples are random ordered\n",
    "df_test.head()                                              # preview the DataFrame"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It is useful to review the summary statistics of our loaded DataFrame.  That can be accomplished with the 'describe' DataFrame member function.  We transpose to switch the axes for ease of visualization.  We will summarize over the training and testing subsets separately."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>mean</th>\n",
       "      <th>std</th>\n",
       "      <th>min</th>\n",
       "      <th>25%</th>\n",
       "      <th>50%</th>\n",
       "      <th>75%</th>\n",
       "      <th>max</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Density</th>\n",
       "      <td>80.0</td>\n",
       "      <td>1.759945</td>\n",
       "      <td>0.295260</td>\n",
       "      <td>1.067960</td>\n",
       "      <td>1.552707</td>\n",
       "      <td>1.767908</td>\n",
       "      <td>1.953262</td>\n",
       "      <td>2.410560</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Porosity</th>\n",
       "      <td>80.0</td>\n",
       "      <td>12.187127</td>\n",
       "      <td>3.125755</td>\n",
       "      <td>4.966421</td>\n",
       "      <td>10.011526</td>\n",
       "      <td>12.170687</td>\n",
       "      <td>14.063670</td>\n",
       "      <td>19.600717</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          count       mean       std       min        25%        50%  \\\n",
       "Density    80.0   1.759945  0.295260  1.067960   1.552707   1.767908   \n",
       "Porosity   80.0  12.187127  3.125755  4.966421  10.011526  12.170687   \n",
       "\n",
       "                75%        max  \n",
       "Density    1.953262   2.410560  \n",
       "Porosity  14.063670  19.600717  "
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_train.describe().transpose()   "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>mean</th>\n",
       "      <th>std</th>\n",
       "      <th>min</th>\n",
       "      <th>25%</th>\n",
       "      <th>50%</th>\n",
       "      <th>75%</th>\n",
       "      <th>max</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Density</th>\n",
       "      <td>25.0</td>\n",
       "      <td>1.667429</td>\n",
       "      <td>0.257608</td>\n",
       "      <td>0.996736</td>\n",
       "      <td>1.568988</td>\n",
       "      <td>1.718085</td>\n",
       "      <td>1.791432</td>\n",
       "      <td>2.339324</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Porosity</th>\n",
       "      <td>25.0</td>\n",
       "      <td>13.632564</td>\n",
       "      <td>2.948887</td>\n",
       "      <td>9.489298</td>\n",
       "      <td>11.325941</td>\n",
       "      <td>13.767060</td>\n",
       "      <td>15.051759</td>\n",
       "      <td>20.964941</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          count       mean       std       min        25%        50%  \\\n",
       "Density    25.0   1.667429  0.257608  0.996736   1.568988   1.718085   \n",
       "Porosity   25.0  13.632564  2.948887  9.489298  11.325941  13.767060   \n",
       "\n",
       "                75%        max  \n",
       "Density    1.791432   2.339324  \n",
       "Porosity  15.051759  20.964941  "
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_test.describe().transpose()   "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Here we extract the ndarrays with porsity and density, training and testing datasets separate arrays for convenience."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "por_train = df_train['Porosity'].values                     # make a shallow copy of the features for convenvience                   \n",
    "den_train = df_train['Density'].values\n",
    "por_test = df_test['Porosity'].values\n",
    "den_test = df_test['Density'].values\n",
    "n_train = len(df_train); n_test = len(df_test)              # get the number of data in training and testing"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Linear Regression Model\n",
    "\n",
    "Let's first calculate the linear regression model. We use scikit learn and then extend the same workflow to ridge regression."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Coefficients:  -8.961, Intercept:  27.958\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Step 1. Instantiate the Model \n",
    "linear_reg = LinearRegression()                             # instantiate the linear regression model\n",
    "\n",
    "# Step 2: Fit the Data on Training Data\n",
    "linear_reg.fit(df_train[\"Density\"].values.reshape(n_train,1), df_train[\"Porosity\"]) # fit model\n",
    "density_model = np.linspace(1.2,2.4,10)\n",
    "\n",
    "# Print the model parameters\n",
    "porosity_model = linear_reg.predict(density_model.reshape(10,1)) # predict with the fit model\n",
    "print('Coefficients: ', str(round(linear_reg.coef_[0],3)) + ', Intercept: ', str(round(linear_reg.intercept_,3))) \n",
    "\n",
    "# Plot model fit\n",
    "plt.subplot(111)\n",
    "plt.scatter(df_train[\"Density\"].values, df_train[\"Porosity\"],  color='black', s = 20, alpha = 0.3)\n",
    "plt.plot(density_model,porosity_model, color='red', linewidth=1)\n",
    "plt.title('Linear Regression Porosity from Density with Training Data'); plt.xlabel('Density (g/cm^3)'); plt.ylabel('Porosity (%)')\n",
    "plt.xlim(1.,2.6)#; plt.ylim(0,1500000)\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.0, top=1.0, wspace=0.2, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's run some quick model checks.  Much more could be done, but I limit this for breviety here. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Variance explained: 0.58\n",
      "Residual: mean = -0.62, standard deviation = 3.13\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Step 3: - Make predictions using the testing dataset\n",
    "y_pred = linear_reg.predict(df_test['Density'].values.reshape(n_test,1))\n",
    "\n",
    "# Report the goodness of fit\n",
    "print('Variance explained: %.2f' % r2_score(df_test['Porosity'].values, y_pred))\n",
    "\n",
    "# Plot testing diagnostics \n",
    "plt.subplot(121)\n",
    "plt.scatter(df_test['Density'].values, df_test['Porosity'].values,  color='black', s = 20, alpha = 0.3)\n",
    "plt.scatter(df_test['Density'], y_pred, color='blue', s = 20, alpha = 0.3)\n",
    "plt.title('Linear Regression Model Testing - Production from Porosity'); plt.xlabel('Density (g/cm^3)'); plt.ylabel('Porosity (%)')\n",
    "plt.xlim(1.0,2.6); plt.ylim(5,24)\n",
    "\n",
    "y_res = y_pred - df_test['Porosity'].values\n",
    "\n",
    "print('Residual: mean = ' + str(round(np.average(y_res),2)) + ', standard deviation = ' + str(round(np.var(y_res),2)))\n",
    "\n",
    "plt.subplot(122)\n",
    "plt.hist(y_res, alpha = 0.2, color = 'red', edgecolor = 'black', bins=20)\n",
    "plt.title('Linear Regression Model Prediction Error - Porosity form Density'); plt.xlabel('Porosity Estimation Error (%) (Estimate - Truth)'); plt.ylabel('Frequency')\n",
    "plt.xlim(-4,4)#; plt.ylim(0,1500000)\n",
    "\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.2, top=1.2, wspace=0.3, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Ridge Regression\n",
    "\n",
    "Let's replace the scikit learn linear regression method with the scikit learn ridge regression method.  Note, we must now set the lambda hyperparameter.\n",
    "\n",
    "* the hyperparameter is set with the instantiation of the model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Coefficients:  -8.961, Intercept:  27.958\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "lam = 1.0\n",
    "\n",
    "# Step 1. Instantiate the Model \n",
    "ridge_reg = Ridge(alpha=lam)\n",
    "\n",
    "# Step 2: Fit the Data on Training Data\n",
    "ridge_reg.fit(df_train[\"Density\"].values.reshape(n_train,1), df_train[\"Porosity\"]) # fit model\n",
    "density_model = np.linspace(1.2,2.4,10)\n",
    "\n",
    "# Print the model parameters\n",
    "porosity_ridge_model = ridge_reg.predict(density_model.reshape(10,1)) # predict with the fit model\n",
    "print('Coefficients: ', str(round(linear_reg.coef_[0],3)) + ', Intercept: ', str(round(linear_reg.intercept_,3))) \n",
    "\n",
    "# Plot model fit\n",
    "plt.subplot(111)\n",
    "plt.scatter(df_train[\"Density\"].values, df_train[\"Porosity\"],  color='black', s = 20, alpha = 0.3)\n",
    "plt.plot(density_model,porosity_ridge_model, color='red', linewidth=1)\n",
    "plt.title('Ridge Regression Porosity from Density with Training Data'); plt.xlabel('Density (g/cm^3)'); plt.ylabel('Porosity (%)')\n",
    "plt.xlim(1.,2.6); plt.ylim(8,17)\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.0, top=1.0, wspace=0.2, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's repeat the simple model checks that we applied with our linear regression model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Variance explained: 0.55\n",
      "Residual: mean = -0.72, standard deviation = 3.22\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Step 3: - Make predictions using the testing dataset\n",
    "y_pred = ridge_reg.predict(df_test['Density'].values.reshape(n_test,1))\n",
    "\n",
    "# Report the goodness of fit\n",
    "print('Variance explained: %.2f' % r2_score(df_test['Porosity'].values, y_pred))\n",
    "\n",
    "# Plot testing diagnostics \n",
    "plt.subplot(121)\n",
    "plt.scatter(df_test['Density'].values, df_test['Porosity'].values,  color='black', s = 20, alpha = 0.3)\n",
    "plt.scatter(df_test['Density'], y_pred, color='blue', s = 20, alpha = 0.3)\n",
    "plt.title('Ridge Regression Model Testing - Production from Porosity'); plt.xlabel('Density (g/cm^3)'); plt.ylabel('Porosity (%)')\n",
    "plt.xlim(1.0,2.6); plt.ylim(5,24)\n",
    "\n",
    "y_res = y_pred - df_test['Porosity'].values\n",
    "\n",
    "print('Residual: mean = ' + str(round(np.average(y_res),2)) + ', standard deviation = ' + str(round(np.var(y_res),2)))\n",
    "\n",
    "plt.subplot(122)\n",
    "plt.hist(y_res, alpha = 0.2, color = 'red', edgecolor = 'black', bins=20)\n",
    "plt.title('Ridge Regression Model Prediction Error - Porosity form Density'); plt.xlabel('Porosity Estimation Error (%) (Estimate - Truth)'); plt.ylabel('Frequency')\n",
    "plt.xlim(-4,4)#; plt.ylim(0,1500000)\n",
    "\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.2, top=1.2, wspace=0.3, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Interesting, we explained less variance and have a larger residual standard deviation (more error).\n",
    "\n",
    "* we reduced both testing variance explained and accuracy in this case! \n",
    "\n",
    "#### the Lasso\n",
    "\n",
    "Let's replace the scikit learn linear regression and ridge regression methods with the scikit learn the lasso method.  Note, we must now set the lambda hyperparameter.\n",
    "\n",
    "* the lambda hyperparameter, $\\lambda$, is set with the instantiation of the model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Coefficients:  -7.799, Intercept:  25.914\n"
     ]
    },
    {
     "data": {
      "image/png": "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Z0owOyAajVJTU0NDQwOLFi2ioaGBmpoaNfopYel0mvr6eg1zFhERERHJATX56aCqqipqa2vVRbYLUMMmEREREZHcUgWzE6LRKBUVFUouS5gaNomIiIiI5J4STClLatiUPxp2LCIiIlK+NERWcmv6dDCDH/0o+FqkGjdsisViatiUIxp2LCIiIlLeVMGU3FqyBH7+c9hhB/jb32DZsrAjapYaNuVeVxt2rEqsiIiISMepgim5deCBsP/+cN998P/+H/zqV3DmmVBbCz17hh3d96hhU241N+y4vr6eVCpVcudWlVgRERGRzlEFU3Kve3f4yU/gxRfhxhvh3nuhf3+4/HL47LOwo/seNWzKna6yTmxXq8SKiIiIFJISTMkfM9h1V3jkkeA2Zw5stBGMHw/JZNjRSY51lWHHagAlIiIi0nkaIiuFMWwY3H47vPsuXH01DBkSDKc980wYPDjs6CRHusKwYzWAEhEREek8VTClsDbYAK65Bt56CzbcEHbZBUaNgmefDTkwyZVSH3bcVSqxIiIiImEwdw87hjZVV1f7jBkzwg5D8iGVgj//Ga64Avr2DYbP7rcfdNPfPiRc6XS6pCuxIiIiIp1lZjPdvbozr9WneAlXLAYnnAD//jeccgpceCFssQXcdht8/XXY0UkZK/VKrIiIiEgYlGBKcYhE4NBDYcYMuO46uOuuoCHQxInw+edhRyciIiIiIu2gBFOKixmMHAnTpsFDD8ErrwRLnPzqV/DBB2FHJyIiIiIirVCCKcVr+HC4886gqvnll7D55nDsscFwWhERERERKTpKMKX49e8fDJt9803o1w923DFY4uS558KOTEREREREGlGCKaWjd284/3z4z3+CYbQ/+xnstBM8+CAsWxZ2dCIiIiIiZU8JppSeWAxOOilYS/PEE+G882Do0GC5k3Q67OhERERERMpW3hJMM7vVzD42s9eaPH6ymf3bzOaa2YR8HV/KQCQCP/0pvPwyXH013H47DBgAV14JX3wRdnQiIiIiImUnnxXMSUBN4wfMbFdgFDDU3TcHrsjj8aVcmMEee8A//gF/+xu89FIwb/PXv4YPPww7OimwdDpNfX09aVWzRURERAoubwmmu08HljZ5+ATgMnf/OrvNx/k6vpSprbYK1tB88UX47DMYPBjGjQsaBEmXl0wmqaurY+rUqdTV1ZFMJsMOSURE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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "lam = 0.10\n",
    "\n",
    "# Step 1. Instantiate the Model \n",
    "lasso_reg = Lasso(alpha=lam)\n",
    "\n",
    "# Step 2: Fit the Data on Training Data\n",
    "lasso_reg.fit(df_train[\"Density\"].values.reshape(n_train,1), df_train[\"Porosity\"]) # fit model\n",
    "density_model = np.linspace(1.2,2.4,10)\n",
    "\n",
    "# Print the model parameters\n",
    "porosity_lasso_model = lasso_reg.predict(density_model.reshape(10,1)) # predict with the fit model\n",
    "print('Coefficients: ', str(round(lasso_reg.coef_[0],3)) + ', Intercept: ', str(round(lasso_reg.intercept_,3))) \n",
    "\n",
    "# Plot model fit\n",
    "plt.subplot(111)\n",
    "plt.scatter(df_train[\"Density\"].values, df_train[\"Porosity\"],  color='black', s = 20, alpha = 0.3)\n",
    "plt.plot(density_model,porosity_lasso_model, color='red', linewidth=1)\n",
    "plt.title('the Lasso Porosity from Density with Training Data'); plt.xlabel('Density (g/cm^3)'); plt.ylabel('Porosity (%)')\n",
    "plt.xlim(1.,2.6); plt.ylim(8,17)\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.0, top=1.0, wspace=0.2, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's repeat the simple model checks that we applied with our linear regression model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Variance explained: 0.55\n",
      "Residual: mean = -0.72, standard deviation = 3.23\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Step 3: - Make predictions using the testing dataset\n",
    "y_pred = lasso_reg.predict(df_test['Density'].values.reshape(n_test,1))\n",
    "\n",
    "# Report the goodness of fit\n",
    "print('Variance explained: %.2f' % r2_score(df_test['Porosity'].values, y_pred))\n",
    "\n",
    "# Plot testing diagnostics \n",
    "plt.subplot(121)\n",
    "plt.scatter(df_test['Density'].values, df_test['Porosity'].values,  color='black', s = 20, alpha = 0.3)\n",
    "plt.scatter(df_test['Density'], y_pred, color='blue', s = 20, alpha = 0.3)\n",
    "plt.title('Linear Regression Model Testing - Production from Porosity'); plt.xlabel('Density (g/cm^3)'); plt.ylabel('Porosity (%)')\n",
    "plt.xlim(1.0,2.6); plt.ylim(5,24)\n",
    "\n",
    "y_res = y_pred - df_test['Porosity'].values\n",
    "\n",
    "print('Residual: mean = ' + str(round(np.average(y_res),2)) + ', standard deviation = ' + str(round(np.var(y_res),2)))\n",
    "\n",
    "plt.subplot(122)\n",
    "plt.hist(y_res, alpha = 0.2, color = 'red', edgecolor = 'black', bins=20)\n",
    "plt.title('the Lasso Model Prediction Error - Porosity form Density'); plt.xlabel('Porosity Estimation Error (%) (Estimate - Truth)'); plt.ylabel('Frequency')\n",
    "plt.xlim(-4,4)#; plt.ylim(0,1500000)\n",
    "\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.2, top=1.2, wspace=0.3, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "What happenned? With our set lambda level\n",
    "\n",
    "```python\n",
    "lam = 1.0\n",
    "```\n",
    "\n",
    "the lasso model removed the density feature and estimated with the global mean.  The lasso attempts to remove features as a function of the lambda level, in other words, the lasso performs feature selection! Let's investigate this model behavoir.\n",
    "\n",
    "#### Investigating the Lambda Hyperparameter\n",
    "\n",
    "Let's look at the multivariate dataset that we already loaded. This way we can observe the model behavoir over a range of features, for a range of lambda hyperparameter values.\n",
    "\n",
    "#### Load a Multivariate Dataset\n",
    "\n",
    "Let's load and preview a multivariate unconventional dataset."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Por</th>\n",
       "      <th>Perm</th>\n",
       "      <th>AI</th>\n",
       "      <th>Brittle</th>\n",
       "      <th>TOC</th>\n",
       "      <th>VR</th>\n",
       "      <th>Production</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>12.08</td>\n",
       "      <td>2.92</td>\n",
       "      <td>2.80</td>\n",
       "      <td>81.40</td>\n",
       "      <td>1.16</td>\n",
       "      <td>2.31</td>\n",
       "      <td>4165.196191</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>12.38</td>\n",
       "      <td>3.53</td>\n",
       "      <td>3.22</td>\n",
       "      <td>46.17</td>\n",
       "      <td>0.89</td>\n",
       "      <td>1.88</td>\n",
       "      <td>3561.146205</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>14.02</td>\n",
       "      <td>2.59</td>\n",
       "      <td>4.01</td>\n",
       "      <td>72.80</td>\n",
       "      <td>0.89</td>\n",
       "      <td>2.72</td>\n",
       "      <td>4284.348574</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>17.67</td>\n",
       "      <td>6.75</td>\n",
       "      <td>2.63</td>\n",
       "      <td>39.81</td>\n",
       "      <td>1.08</td>\n",
       "      <td>1.88</td>\n",
       "      <td>5098.680869</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>17.52</td>\n",
       "      <td>4.57</td>\n",
       "      <td>3.18</td>\n",
       "      <td>10.94</td>\n",
       "      <td>1.51</td>\n",
       "      <td>1.90</td>\n",
       "      <td>3406.132832</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     Por  Perm    AI  Brittle   TOC    VR   Production\n",
       "0  12.08  2.92  2.80    81.40  1.16  2.31  4165.196191\n",
       "1  12.38  3.53  3.22    46.17  0.89  1.88  3561.146205\n",
       "2  14.02  2.59  4.01    72.80  0.89  2.72  4284.348574\n",
       "3  17.67  6.75  2.63    39.81  1.08  1.88  5098.680869\n",
       "4  17.52  4.57  3.18    10.94  1.51  1.90  3406.132832"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mv_data = 2\n",
    "\n",
    "if mv_data == 1:\n",
    "    df_mv = pd.read_csv(r\"https://raw.githubusercontent.com/GeostatsGuy/GeoDataSets/master/unconv_MV.csv\")\n",
    "    df_mv = df_mv.drop('WellIndex',axis = 1)                    # remove the well index feature\n",
    "elif mv_data == 2:\n",
    "    df_mv = pd.read_csv(r\"https://raw.githubusercontent.com/GeostatsGuy/GeoDataSets/master/unconv_MV_v5.csv\")\n",
    "    df_mv = df_mv.rename({'Prod':'Production'},axis=1)\n",
    "    df_mv = df_mv.drop('Well',axis = 1)                    # remove the well index feature\n",
    "df_mv.head()                                                # load the comma delimited data file"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's calculate the summary statistics for our data."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>mean</th>\n",
       "      <th>std</th>\n",
       "      <th>min</th>\n",
       "      <th>25%</th>\n",
       "      <th>50%</th>\n",
       "      <th>75%</th>\n",
       "      <th>max</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Por</th>\n",
       "      <td>200.0</td>\n",
       "      <td>14.991150</td>\n",
       "      <td>2.971176</td>\n",
       "      <td>6.550000</td>\n",
       "      <td>12.912500</td>\n",
       "      <td>15.070000</td>\n",
       "      <td>17.402500</td>\n",
       "      <td>23.550000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Perm</th>\n",
       "      <td>200.0</td>\n",
       "      <td>4.330750</td>\n",
       "      <td>1.731014</td>\n",
       "      <td>1.130000</td>\n",
       "      <td>3.122500</td>\n",
       "      <td>4.035000</td>\n",
       "      <td>5.287500</td>\n",
       "      <td>9.870000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>AI</th>\n",
       "      <td>200.0</td>\n",
       "      <td>2.968850</td>\n",
       "      <td>0.566885</td>\n",
       "      <td>1.280000</td>\n",
       "      <td>2.547500</td>\n",
       "      <td>2.955000</td>\n",
       "      <td>3.345000</td>\n",
       "      <td>4.630000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Brittle</th>\n",
       "      <td>200.0</td>\n",
       "      <td>48.161950</td>\n",
       "      <td>14.129455</td>\n",
       "      <td>10.940000</td>\n",
       "      <td>37.755000</td>\n",
       "      <td>49.510000</td>\n",
       "      <td>58.262500</td>\n",
       "      <td>84.330000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>TOC</th>\n",
       "      <td>200.0</td>\n",
       "      <td>0.990450</td>\n",
       "      <td>0.481588</td>\n",
       "      <td>-0.190000</td>\n",
       "      <td>0.617500</td>\n",
       "      <td>1.030000</td>\n",
       "      <td>1.350000</td>\n",
       "      <td>2.180000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>VR</th>\n",
       "      <td>200.0</td>\n",
       "      <td>1.964300</td>\n",
       "      <td>0.300827</td>\n",
       "      <td>0.930000</td>\n",
       "      <td>1.770000</td>\n",
       "      <td>1.960000</td>\n",
       "      <td>2.142500</td>\n",
       "      <td>2.870000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Production</th>\n",
       "      <td>200.0</td>\n",
       "      <td>4311.219852</td>\n",
       "      <td>992.038414</td>\n",
       "      <td>2107.139414</td>\n",
       "      <td>3618.064513</td>\n",
       "      <td>4284.687348</td>\n",
       "      <td>5086.089761</td>\n",
       "      <td>6662.622385</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            count         mean         std          min          25%  \\\n",
       "Por         200.0    14.991150    2.971176     6.550000    12.912500   \n",
       "Perm        200.0     4.330750    1.731014     1.130000     3.122500   \n",
       "AI          200.0     2.968850    0.566885     1.280000     2.547500   \n",
       "Brittle     200.0    48.161950   14.129455    10.940000    37.755000   \n",
       "TOC         200.0     0.990450    0.481588    -0.190000     0.617500   \n",
       "VR          200.0     1.964300    0.300827     0.930000     1.770000   \n",
       "Production  200.0  4311.219852  992.038414  2107.139414  3618.064513   \n",
       "\n",
       "                    50%          75%          max  \n",
       "Por           15.070000    17.402500    23.550000  \n",
       "Perm           4.035000     5.287500     9.870000  \n",
       "AI             2.955000     3.345000     4.630000  \n",
       "Brittle       49.510000    58.262500    84.330000  \n",
       "TOC            1.030000     1.350000     2.180000  \n",
       "VR             1.960000     2.142500     2.870000  \n",
       "Production  4284.687348  5086.089761  6662.622385  "
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_mv.describe().transpose()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's standardize the feature to have:\n",
    "\n",
    "* mean = 0.0\n",
    "* variance = standard deviation = 1.0\n",
    "\n",
    "To do this we:\n",
    "\n",
    "1. instantiate the StandardScaler from scikit learn. We assign it as 'scaler' so we can use it to conveniently reverse the transformation if we like. We will need to do that to get our predictions back into regular production units.\n",
    "\n",
    "```python\n",
    "scaler = StandardScaler()\n",
    "```\n",
    "\n",
    "2. we then extract all the values from our DataFrame and apply the by-column standardization.  The result is a 2D ndarray\n",
    "\n",
    "```python\n",
    "sfeatures = scaler.fit_transform(df_mv.values)\n",
    "```\n",
    "3. we make an new empty DataFrame\n",
    "\n",
    "```python\n",
    "df_nmv = pd.DataFrame()\n",
    "```\n",
    "\n",
    "4. then we add the transformed value to the new DataFrame while keeping the sample index and feature names from the old DataFramae\n",
    "\n",
    "```python\n",
    "df_nmv = pd.DataFrame(sfeatures, index=df_mv.index, columns=df_mv.columns)\n",
    "```\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Por</th>\n",
       "      <th>Perm</th>\n",
       "      <th>AI</th>\n",
       "      <th>Brittle</th>\n",
       "      <th>TOC</th>\n",
       "      <th>VR</th>\n",
       "      <th>Production</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.982256</td>\n",
       "      <td>-0.817030</td>\n",
       "      <td>-0.298603</td>\n",
       "      <td>2.358297</td>\n",
       "      <td>0.352948</td>\n",
       "      <td>1.152048</td>\n",
       "      <td>-0.147565</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-0.881032</td>\n",
       "      <td>-0.463751</td>\n",
       "      <td>0.444147</td>\n",
       "      <td>-0.141332</td>\n",
       "      <td>-0.209104</td>\n",
       "      <td>-0.280931</td>\n",
       "      <td>-0.757991</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-0.327677</td>\n",
       "      <td>-1.008148</td>\n",
       "      <td>1.841224</td>\n",
       "      <td>1.748113</td>\n",
       "      <td>-0.209104</td>\n",
       "      <td>2.518377</td>\n",
       "      <td>-0.027155</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0.903875</td>\n",
       "      <td>1.401098</td>\n",
       "      <td>-0.599240</td>\n",
       "      <td>-0.592585</td>\n",
       "      <td>0.186414</td>\n",
       "      <td>-0.280931</td>\n",
       "      <td>0.795773</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0.853263</td>\n",
       "      <td>0.138561</td>\n",
       "      <td>0.373409</td>\n",
       "      <td>-2.640962</td>\n",
       "      <td>1.081534</td>\n",
       "      <td>-0.214280</td>\n",
       "      <td>-0.914640</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        Por      Perm        AI   Brittle       TOC        VR  Production\n",
       "0 -0.982256 -0.817030 -0.298603  2.358297  0.352948  1.152048   -0.147565\n",
       "1 -0.881032 -0.463751  0.444147 -0.141332 -0.209104 -0.280931   -0.757991\n",
       "2 -0.327677 -1.008148  1.841224  1.748113 -0.209104  2.518377   -0.027155\n",
       "3  0.903875  1.401098 -0.599240 -0.592585  0.186414 -0.280931    0.795773\n",
       "4  0.853263  0.138561  0.373409 -2.640962  1.081534 -0.214280   -0.914640"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "scaler = StandardScaler()                                   # instantiate the scaler \n",
    "sfeatures = scaler.fit_transform(df_mv.values)              # standardize all the values extracted from the DataFrame \n",
    "df_nmv = pd.DataFrame()                                     # instantiate a new DataFrame\n",
    "df_nmv = pd.DataFrame(sfeatures, index=df_mv.index, columns=df_mv.columns) # copy the standardized values into the new DataFrame\n",
    "df_nmv.head()                                               # preview the the new DataFrame"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Let's check the summary statistics."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>count</th>\n",
       "      <th>mean</th>\n",
       "      <th>std</th>\n",
       "      <th>min</th>\n",
       "      <th>25%</th>\n",
       "      <th>50%</th>\n",
       "      <th>75%</th>\n",
       "      <th>max</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Por</th>\n",
       "      <td>200.0</td>\n",
       "      <td>2.620126e-16</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-2.848142</td>\n",
       "      <td>-0.701361</td>\n",
       "      <td>0.026605</td>\n",
       "      <td>0.813617</td>\n",
       "      <td>2.887855</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Perm</th>\n",
       "      <td>200.0</td>\n",
       "      <td>-5.662137e-17</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-1.853701</td>\n",
       "      <td>-0.699753</td>\n",
       "      <td>-0.171282</td>\n",
       "      <td>0.554098</td>\n",
       "      <td>3.208033</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>AI</th>\n",
       "      <td>200.0</td>\n",
       "      <td>3.985701e-16</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-2.986650</td>\n",
       "      <td>-0.745137</td>\n",
       "      <td>-0.024493</td>\n",
       "      <td>0.665203</td>\n",
       "      <td>2.937664</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Brittle</th>\n",
       "      <td>200.0</td>\n",
       "      <td>1.824929e-16</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-2.640962</td>\n",
       "      <td>-0.738391</td>\n",
       "      <td>0.095646</td>\n",
       "      <td>0.716652</td>\n",
       "      <td>2.566186</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>TOC</th>\n",
       "      <td>200.0</td>\n",
       "      <td>3.552714e-16</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-2.457313</td>\n",
       "      <td>-0.776361</td>\n",
       "      <td>0.082330</td>\n",
       "      <td>0.748466</td>\n",
       "      <td>2.476256</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>VR</th>\n",
       "      <td>200.0</td>\n",
       "      <td>9.126033e-16</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-3.446814</td>\n",
       "      <td>-0.647507</td>\n",
       "      <td>-0.014330</td>\n",
       "      <td>0.593853</td>\n",
       "      <td>3.018254</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Production</th>\n",
       "      <td>200.0</td>\n",
       "      <td>1.709743e-16</td>\n",
       "      <td>1.002509</td>\n",
       "      <td>-2.227345</td>\n",
       "      <td>-0.700472</td>\n",
       "      <td>-0.026813</td>\n",
       "      <td>0.783049</td>\n",
       "      <td>2.376222</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            count          mean       std       min       25%       50%  \\\n",
       "Por         200.0  2.620126e-16  1.002509 -2.848142 -0.701361  0.026605   \n",
       "Perm        200.0 -5.662137e-17  1.002509 -1.853701 -0.699753 -0.171282   \n",
       "AI          200.0  3.985701e-16  1.002509 -2.986650 -0.745137 -0.024493   \n",
       "Brittle     200.0  1.824929e-16  1.002509 -2.640962 -0.738391  0.095646   \n",
       "TOC         200.0  3.552714e-16  1.002509 -2.457313 -0.776361  0.082330   \n",
       "VR          200.0  9.126033e-16  1.002509 -3.446814 -0.647507 -0.014330   \n",
       "Production  200.0  1.709743e-16  1.002509 -2.227345 -0.700472 -0.026813   \n",
       "\n",
       "                 75%       max  \n",
       "Por         0.813617  2.887855  \n",
       "Perm        0.554098  3.208033  \n",
       "AI          0.665203  2.937664  \n",
       "Brittle     0.716652  2.566186  \n",
       "TOC         0.748466  2.476256  \n",
       "VR          0.593853  3.018254  \n",
       "Production  0.783049  2.376222  "
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_nmv.describe().transpose()                               # summary statistics from the new DataFrame"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Success, we have all features standardized.  We are ready to build our model.  Let's extract training and testing datasets."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Number of training data = 134 and number of testing data = 66\n"
     ]
    }
   ],
   "source": [
    "X_train, X_test, y_train, y_test = train_test_split(df_nmv.iloc[:,:6], pd.DataFrame({'Production':df_nmv['Production']}), test_size=0.33, random_state=73073)\n",
    "print('Number of training data = ' + str(len(X_train)) + ' and number of testing data = ' + str(len(X_test)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Now let's observe the model coefficients ($b_{\\alpha}, \\alpha = 1,\\ldots,m$) for a range of $\\lambda$ hyperparameter values."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ZznttNMYN24cV199dUy3aBcBJdMiIiLSR5gZM2fO5Le//S2bNm3igQce4KSTTsLM6tts3LiRn//854wfP57PfvazPPnkkzGPpy19k5JpERER6XMyMzM544wzePLJJ1mzZg1XXXUVw4YNq19eV1fH448/zv/8z/8wadIkfve731FRUZHEiKW7UjItIiIifdq4ceO45pprWL9+PQ8++CDHHXdcg+UfffQRl1xyCZMnT+aBBx5oc0xs6VuUTIuIiIgQDNF3+umn89xzz7Fy5Uq+//3vM2jQoPrlGzZs4Mwzz+S4445j2bJlSYxUuhMl0yIiIiKNTJ48mRtvvJF169Zx8803M3To0PplL7zwAtOnT+eHP/whxcXFSYxSugMl0yIiIiItyMnJ4dJLL2XlypVceuml9Td5qamp4cYbb2Tvvffm/vvvV9ePPkzJtIiIiEgb8vPzufnmm3n77bc54ogj6us3btzIWWedxYknnsjatWuTF6AkjZJpERERkRhNnz6dl156iXvuuafB6B/PPvss++67LzfddJOG0utjlEyLiIiItIOZ8ZWvfIUVK1bwne98p36c6rKyMr73ve9x2GGH8c477yQ5SukqbSbTZnapmfW3wJ/N7C0zO74rghMRERHprvLz87nlllt47bXXmDZtWn39okWLOOigg7jqqqs0NnUfEMuZ6a+6exFwPDAEOB+4PqFRiYiIiPQQhxxyCG+++SbXXHMNGRkZQHCB4rXXXsv06dN54YUXkhyhJFIsyXTkHpsnA39x9yVRdSIiIiJ9XkZGBldddRVLlizhyCOPrK//4IMPOPbYYzn33HPZtm1bEiOURIklmX7TzJ4lSKafMbM8oK4zdm5mJ5rZCjNbZWZXNLN8tpntNrPFYflprOuKiIiIdLW9996b+fPn84c//IH+/fvX199zzz1MnTqVm266icrKyiRGKJ0tlmT6AuAKYJa7lwEZBF09OsTMUoHfAScB+wBnm9k+zTR92d1nhOXn7VxXREREpEulpKRw0UUXsXz5cr7whS/U1+/cuZPvfe977L333tx7773U1XXKuUlJsliS6efc/S133wXg7oXATZ2w74OBVe6+2t2rgPuAU7pgXREREZGEGzFiBPfffz//+te/mDhxYn392rVr+dKXvsSsWbN4/vnnkxihdIYWk2kzyzKzAmCwmQ00s4KwjAdGdsK+RwHro+Y3hHWNHWZmS8zsKTPbt53rioiIiCTVySefzLJly7jlllsYNGhQff1bb73Fcccdx0knncS7776bxAilI9JaWfYN4LsEifOb7LnosIigi0VHNXcRY+N7cb4FjHP3EjM7GXgEmBzjusFOzC4ELgQYMmQI8+fPjzdeEWlFSUmJji+RBNHx1TtMnz6du+66i3nz5vHQQw9RVVUFwNNPP82zzz7LZz/7Wc4///wGfa2l+7O27iVvZt929990+o7NDgPmuvsJ4fyVAO5+XSvrrAVmEiTU7VoXYOrUqb5ixYpOiV9EGpo/fz6zZ89OdhgivZKOr95nw4YNXH311fzlL38hOhcbNGgQ11xzDV//+tdJTU1NYoR9h5m96e4z412/zT7T7v4bM/ukmX3RzM6JlHh3GGURMNnMJphZBnAW8Fh0AzMbbuFthczs4DDewljWFREREemuRo8ezZ///GeWLFnCscceW19fWFjIN7/5TWbOnMnLL7+cxAglVrHcAfGvwK+AI4BZYYk7e49w9xrgEuAZYBnwgLu/Z2YXmdlFYbPTgaVmtgS4FTjLA82u29GYRERERLrSfvvtx3PPPcc///lPxo8fX1+/ePFijjrqKL74xS+yadOm5AUobYqlm8cyYB9vq2EPoG4eIomjn6FFEkfHV99QXl7Or371K6677jrKy8vr6/v378/111/PN77xDVJSYhmITdoj4d08gKXA8Hh3ICIiIiJty87O5ic/+QnLly/nzDPPrK8vKiri4osv5vDDD9eoH91QLMn0YOB9M3vGzB6LlEQHJiIiItIXjR07lvvuu48XXniByZMn19cvWLCAAw88kCuuuIKysrIkRijRYkmm5wKfA64Ffh1VRERERCRB5syZwzvvvMNPf/pT0tPTAaipqeGGG25g2rRpPPfcc0mOUCC20Tz+A6wF0sPpRQTjP4uIiIhIAmVlZfGzn/2Md955h6OOOqq+fs2aNRx//PF84xvfoLi4OIkRSiyjeXwdeAj4Y1g1iuDmKSIiIiLSBfbee29efPFF/vznPzNw4MD6+ttvv5399ttPtyVPoli6eXwLOJzgzoe4+wfA0EQGJSIiIiINpaSk8NWvfpVly5Zx6qmn1td/9NFHHHfccVx88cWUlJQkMcK+KZZkutLdqyIzZpZGC7fuFhEREZHEGjZsGP/4xz+49957KSgoqK//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knLTFncvJBiho3H9RuDkqPkyoMm9Jt39KwkNUEREREQS6oUXXiArK4vzzz8fgNTUVG666SYmTJjAz372M373u99x7rnncthhhwFgZpx++unJDLlZup24iIiIiHS59957j4MOOqhBXf/+/Rk7diyrVq1i6dKlTZZ3R7qduIiIiEhfca8lbttfbN8Ice6OWdN4WqrvrnRmWkRERES63L777ssbb7zRoK6oqIj169czadIk9t13X958880kRRc7JdMiIiIi0uWOPfZYysrKuOeeewCora3l8ssv57zzziMnJ4dLLrmEu+++m9dff71+nb/97W9s3rw5WSE3S908RERERPqKdnbFSCQz4+GHH+biiy/mF7/4BXV1dZx88slce+21AAwbNoz77ruP73//+2zdupWUlBSOOuooTjvttCRH3pCSaRERERHpEnPnzm0wP2bMGB5//PEW2x922GG8/PLLCY6qY9TNQ0REREQkTkqmRURERETipGRaRERERCROSqZFREREROKkZFpEREREJE5KpkVERERE4qRkWkREREQSZvbs2TzzzDMN6m6++WZOPvlksrOzmTFjBvvssw/nnHMO1dXVSYoyfkqmRURERCRhzj77bO67774Gdffddx9XXnklkyZNYvHixbz77rts2LCBBx54IElRxk/JtIiIiIgkzOmnn84TTzxBZWUlAGvXrmXjxo2MHj26vk1qaioHH3wwH3/8cbLCjJuSaRERERFJmEGDBnHwwQfz9NNPA8FZ6TPPPBMzq29TUVHB66+/zoknnpisMOOm24mLiIiI9BE/+9nPErbtq6++usVlka4ep5xyCvfddx933nknAB9++CEzZszggw8+4PTTT2f69OkJiy9RdGZaRERERBLqc5/7HM8//zxvvfUW5eXlHHjggQD1faZXrVrFggULeOyxx5IcafspmRYRERGRhOrXrx+zZ8/mq1/9KmeffXaT5SNGjOD666/nuuuuS0J0HaNuHiIiIiJ9RGtdMRLt7LPP5rTTTmsyskfE5z73OebOncvLL7/MkUce2cXRxU/JtIiIiIgk3Kmnnoq718+PHz+epUuX1s+bGUuWLElGaB2ibh4iIiIiInFSMi0iIiIiEicl0yIiIiIicVIyLSIiItLLRfdV7qsS9RoomRYRERHpxbKysigsLOzTCbW7U1hYSFZWVqdvW6N5iIiIiPRio0ePZsOGDWzbti3ZoSRVVlYWo0eP7vTtJiWZNrMzgLnAJ4CD3f2NFtqdCNwCpAJ3uPv1YX0BcD8wHlgLfMHddyY8cBEREZEeJj09nQkTJiQ7jF4rWd08lgKnAS+11MDMUoHfAScB+wBnm9k+4eIrgOfdfTLwfDgvIiIiItKlkpJMu/syd1/RRrODgVXuvtrdq4D7gFPCZacAd4fTdwOfS0igIiIiIiKt6M4XII4C1kfNbwjrAIa5+yaA8HFoF8cmIiIiIpK4PtNm9m9geDOLrnL3R2PZRDN17b4M1cwuBC4MZyvNbGlr7fuAfGB3soNoRlfGlYh9dcY2491GPOu1Z51Y2w4Gtrczjt5Gx5eOr/auo+Mrdjq+dHy1d51Y205tZwwNuXvSCjAfmNnCssOAZ6LmrwSuDKdXACPC6RHAihj390Yyn293KMDtyY4h2XElYl+dsc14txHPeu1ZJ9a2Or50fCVqXzq+dHx11vugp8el46t7Hl/duZvHImCymU0wswzgLOCxcNljwLnh9LlALGe6JfB4sgNoQVfGlYh9dcY2491GPOu1Z53u+p7pjrrra6XjS8dXb9BdXysdX338+LIwI+9SZnYq8BtgCLALWOzuJ5jZSIIh8E4O250M3EwwNN6d7v7LsH4Q8AAwFlgHnOHuO2LY7xvuPrPzn5GI6PgSSRwdXyKJ09HjKynJdLKY2YXufnuy4xDpjXR8iSSOji+RxOno8dWnkmkRERERkc7UnftMi4iIiIh0a0qmRURERETipGRaRERERCROSqZDZvYJM7vNzB4ys28mOx6R3sTMPmdmfzKzR83s+GTHI9KbmNlEM/uzmT2U7FhEegMzyzWzu8PPrS+11b5XJNNmdqeZbW18d0MzO9HMVpjZKjO7orVtuPsyd78I+AKg4YdEQp10fD3i7l8HzgPOTGC4Ij1KJx1fq939gsRGKtKztfNYOw14KPzc+mxb2+4VyTRwF3BidIWZpQK/A04C9gHONrN9zGw/M3uiURkarvNZ4BXg+a4NX6Rbu4tOOL5CPw7XE5HAXXTe8SUiLbuLGI81YDSwPmxW29aG0zo1zCRx95fMbHyj6oOBVe6+GsDM7gNOcffrgE+3sJ3HgMfM7F/AvQkMWaTH6Izjy8wMuB54yt3fSnDIIj1GZ31+iUjr2nOsARsIEurFxHDiubecmW7OKPZ8q4DghRnVUmMzm21mt5rZH4EnEx2cSA/XruML+DZwHHC6mV2UyMBEeoH2fn4NMrPbgAPM7MpEByfSi7R0rP0T+LyZ/YEYbkneK85Mt8CaqWvxDjXuPh+Yn6hgRHqZ9h5ftwK3Ji4ckV6lvcdXIaAvqSLt1+yx5u6lwPmxbqQ3n5neAIyJmh8NbExSLCK9jY4vkcTR8SXSNTrlWOvNyfQiYLKZTTCzDOAs4LEkxyTSW+j4EkkcHV8iXaNTjrVekUyb2TzgNWCqmW0wswvcvQa4BHgGWAY84O7vJTNOkZ5Ix5dI4uj4EukaiTzWzL3FblgiIiIiItKKXnFmWkREREQkGZRMi4iIiIjEScm0iIiIiEiclEyLiIiIiMRJybSIiIiISJyUTIuIiIiIxEnJtIj0aWZWkoBtrjWzwZ2978bbNbPZZvZEPDH2BmZ2npmNTHYcItK3KZkWEZFmmVlqJ2wjrTNiacF5QLuS6QTHIyJ9kJJpEZFGzOwzZva6mb1tZv82s2Fh/Vwzu9vMng3PEp9mZv/PzN41s6fNLD1qMz8ws4Vh2Stcf4KZvWZmi8zsF1H762dmz5vZW+G2TmlnvClm9oGZDYmaX2Vmg83sLjO7zcxeNrOVZvbpsE2qmd0YxvKOmX0jrJ9tZi+a2b3Au2Y23syWh8/7HTN7yMxywrY/Dddfama3m5mF9fPN7Foz+w9waUdfTzM7yMz+Y2ZvmtkzZjbCzE4HZgJ/N7PFZpbdXLvm4mnv+0FEpDVKpkVEmnoFONTdDwDuA34YtWwS8D/AKcDfgBfdfT+gPKyPKHL3g4HfAjeHdbcAf3D3WcDmqLYVwKnufiAwB/h1JDFtxoth8rgYuAPA3evCWL4UtjkOWOLu28P58cDRYXy3mVkWcAGwO4xlFvB1M5sQtj8YuMrd9wnnpwK3u/t0oAi4OKz/rbvPcvdpQDbw6ag4B7j70e7+6468nmFC/RvgdHc/CLgT+KW7PwS8AXzJ3WcANc21ayEeEZFOo5+7RESaGg3cH57ZzADWRC17yt2rzexdIBV4Oqx/lyBpjZgX9XhTOH048Plw+q/ADeG0Adea2VFAHTAKGEbDhDtiTiRJNrPZwPfD+juBRwkS968Cf4la54Ew4f7AzFYDewPHA9PDM7wA+cBkoApY6O7Rz3m9u78aTv8N+A7wK2COmf0QyAEKgPeAx8N290et35HXcyowDXgu/H6RCmxq5nVpq939zawjItJhSqZFRJr6DfB/7v5YmLDOjVpWCcHZYDOrdncP6+to+DfVY5iO+BIwBDgoTCzXAlntCdjd15vZFjM7BjiEPWepm9unEyTw33b3Z6IXhM+3tJn2DebDs9u/B2aG+57bKObobXTk9TTgPXc/rJmn3SD0Nto1fk4iIp1C3TxERJrKBz4Op8+NcxtnRj2+Fk6/CpwVTkcnu/nA1jCRngOMi3OfdxCcOX7A3Wuj6s8I+1FPAiYCK4BngG9G9UueYma5LWx3rJlFktSzCbptRBLn7WbWDzi92TUDHXk9VwBDIvs3s3Qz2zdcVgzkxdBORCRhlEyLSF+XY2Ybosr3CM6cPmhmLwPbW1+9RZlm9jrBBW+XhXWXAt8ys0UECWbE34GZZvYGQZK9PM59Pgb0o2EXDwgSzf8ATwEXuXsFQeL9PvCWmS0F/kjLv1YuA841s3cIunP8wd13AX8i6I7xCLColbjmEufr6e5VBIn6DWa2BFgMfDJcfBdBH/DFBN06WmonIpIwtucXNRER6cnMbCZwk7sfGVV3F/BEeMFePNscH64/rVOCFBHpZdRnWkSkFzCzK4Bv0rD7iIiIJJjOTIuIiIiIxEl9pkVERERE4qRkWkREREQkTkqmRURERETipGRaRERERCROSqZFREREROKkZFpEREREJE7/H8YpiunyDoctAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "nbins = 1000                                                # number of bins to explore the hyperparameter \n",
    "df_nmv.describe().transpose()                               # summary statistics from the new DataFrame\n",
    "lams = np.linspace(0.001,1.0,nbins)                         # make a list of lambda values\n",
    "coefs = np.ndarray((nbins,6))\n",
    "\n",
    "index = 0\n",
    "for lam in lams:\n",
    "    lasso_reg = Lasso(alpha=lam)                            # instantiate the model\n",
    "    lasso_reg.fit(X_train, y_train)                         # fit model\n",
    "    coefs[index,:] = lasso_reg.coef_                        # retreive the coefficients\n",
    "    index = index + 1\n",
    "    \n",
    "color = ['black','blue','green','red','orange','grey']\n",
    "plt.subplot(111)                                            # plot the results\n",
    "for ifeature in range(0,6):\n",
    "    plt.semilogx(lams,coefs[:,ifeature], label = df_mv.columns[ifeature], c = color[ifeature], linewidth = 3.0)\n",
    "\n",
    "plt.title('Standardized Model Coefficients vs. Lambda Hyperparameter'); plt.xlabel('Lambda Hyperparameter'); plt.ylabel('Standardized Model Coefficients')\n",
    "plt.xlim(0.001,1); plt.ylim(-1.0,1.0); plt.grid(); plt.legend(loc = 'lower right')\n",
    "\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=1.5, top=1., wspace=0.2, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "What do we see?\n",
    "\n",
    "* for a very low lambda value, all features are included \n",
    "\n",
    "* as we increase the lambda hyperparameter, total organic carbon is the first predictor feature to be removed\n",
    "\n",
    "* then acoustic impedance, vitrinite reflectance, brittleness, log perm and finally porosity.\n",
    "\n",
    "* at $\\lambda \\ge 0.8$ all features are removed.\n",
    "\n",
    "Let's repeat this workflow with ridge regression for contrast."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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aUqaRfZhSpRFRKRBMjM6depEp06dOPXUU0vKN2/ezOeff87UqVPJycnhww8/ZMeOHSXLc3NzmTBhAhMmTKBx48ZccMEFXH755Rx66KGJeBgikkCJvDKfiIhInWvatCknnXQSt9xyC2+99RYbN25kypQp3HDDDey///6l6ubm5vLwww8zaNAgDjnkEB555JE99osWkYZDibKIiOzTMjMzOfnkk7n33nuZO3cu06dP59Zbby2XNH/99ddcfvnldO/enbvvvpvNmzcnKGIRqStKlEVEREJmxoABA/jDH/7A3Llz+fDDD7nooovIyMgoqbNq1SrGjh1Lly5d+P3vf09ubm4CIxaReFKiLCIiEoWZccwxxzB+/HhWrFjBvffeS4cOHUqWb9myhd/97nf07NmThx56iF27diUwWhGJByXKIiIie9C8eXNuuOEGFi5cyGOPPUbv3r1Llq1evZqf/exnHHTQQbz//vsJjFJEapsSZRERkRilp6czZswYZs2axWOPPUbHjh1Lls2ZM4chQ4ZwySWXsHbt2gRGKSK1RYmyiIhIFSUnJzNmzBjmz5/PnXfeSePGjUuWjR8/nj59+vDf//43gRGKSG1QoiwiIlJNWVlZjB07lrlz5zJ69OiS8g0bNnDeeefxox/9iE2bNiUuQBGpESXKIiIiNdSxY0eee+45XnvtNbp27VpS/tRTT3HggQeq77LIXkqJsoiISC0ZPnw4M2bM4OKLLy4pW7ZsGSeeeCL33HNPuUtni0j9pkRZRESkFjVp0oQnnniC559/npYtWwJQWFjITTfdxFlnnaULlYjsRZQoi4iIxMGoUaOYPn06Rx55ZEnZSy+9xKBBg5g7d24CIxORWClRFhERiZOOHTuSk5PDtddeW1K2YMECjjzySN59990ERiYisVCiLCIiEkdpaWncf//9PPPMM2RlZQGwadMmTj31VP71r38lODoRqYwSZRERkTpw7rnn8sEHH9C+fXsACgoKGDNmDL/5zW90kp9IPaVEWUREpI4ceuihfPbZZxx00EElZXfeeSeXX345hYWFCYxMRKJRoiwiIlKHOnXqxIcffsgPfvCDkrJHH32Uc889lx07diQwMhEpa4+Jsplda2ZNLPCYmX1lZqfURXAiIiINUXZ2Ni+99BKXXHJJSdnEiRM5/fTTyc3NTVxgIlJKLEeUx7j7FuAUoDVw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m1mLKMXfhLeNgQ1xiUhEREREGqSCggJef/11hg0bxu9+9zsOPvhgXnrpJd59910uuugipk2bBsCXX37J//73PzIzMxMab2VHlL8EnOACI12AjeH9ZsASIPaxNUREREQk4eJ5Up+7V7hs+/btDBw4EAiOKF922WUcfvjhTJw4EYATTjiB9evXs3nzZgB++MMfJjxJhkoSZXfvDmBmDwGT3H1yOH8acFLdhCciIiIie7viPsqRoiXWxYl8o0aN6iKsPYrlZL7BxUkygLu/Dhwfv5BEREREpKE77rjjeOqppwDIycmhVatWNGnSJMFRlRbLlfnWmdmtwH8IumL8CFgf16hEREREpNZV1j2iro0bN45LL72UAQMGkJWVxfjx4xMdUjmxJMrnA78DXgznPwjLRERERET2KDc3t1xZixYtePnll8uVjxs3rg4iik0sw8NtILg6n4iIiIjIPmOPibKZ7Q/cCHSLrO/uJ8QvLBERERGRxIql68VzwEPAo0BhfMMREREREakfYkmUC9z9/+IeiYiIiIhIPRLL8HCvmNnPzay9mbUonuIemYiIiIhIAsVyRPni8PZXEWUO7Ff74YiIiIiI1A+xjHqhS1WLiIiISLUlJydz4IEHUlBQQN++fRk/fjxZWVmJDmuPYul6gZkdYGbnmNlFxVO8AxMRERGRhqH4EtYzZ84kLS2Nhx56KKb1CgoK4hxZ5WIZHu53wBCgHzAZOA34H/BkXCMTERERkQbn2GOPZcaMGWzbto2rr76ab775hoKCAsaNG8eIESN44okneO2118jPz2fbtm1cdNFFvPTSSxQWFjJz5kxuuOEGdu7cyb///W/S09OZPHkyLVrE5/S5WI4ojwZOBFa5+6XAQUB6TXYanhD4lpl9G942r6DeYjP7xsymmdkXVV1fREREROqPgoICXn/9dQ488ED++Mc/csIJJ/D555/z3nvv8atf/Ypt27YB8MknnzB+/HjeffddAGbOnMnTTz/NZ599xi233EJWVhZff/01Rx55JE8+Gb9jt7EkytvdvQgoMLMmwBpqfiLfWOAdd+8FvBPOV2Souw9090HVXF9EREREALP4TZXZvn07AwcOZNCgQXTp0oXLLruMKVOmcNdddzFw4ECGDBlCfn4+S5YsAeDkk08udZR46NChZGdn07p1a5o2bcoZZ5wBwIEHHsjixYvj9XTFNOrFF2bWDHgE+BLIBT6r4X5HEHTnABgP5AC/rsP1RURERKSOFPdRjuTuTJw4kd69e5cqnzp1Ko0aNSpVlp6+uzNDUlJSyXxSUlJc+zHv8Yiyu//c3Te5+0PAycDFYReMmmjr7ivD7a8E2lS0e2CKmX1pZpdXY30RERERqYdOPfVU/va3v+HuAHz99dcJjqi8WE7me8fdTwRw98VlyypZ722gXZRFt1QhvqPdfYWZtQHeMrO57v5BFdYnTLAvB2jdujU5OTlVWV3qodzcXLVjA6G2bBjUjg2D2rHhKNuWTZs2ZevWrQBs2RK//Ya7qGR56QrXXXcdY8eO5YADDsDd6dKlC8899xz5+fns3LmzpH7ZeXcnNzeX9PT0csv2JD8/v0qvcyvO4sstMMsAsoD3CLo5FPc+aQK87u59Y95L+W3PA4a4+0ozaw/kuHvvPawzDsh193ursz5A7969fd68edUNW+qJnJwchgwZkugwpBaoLRsGtWPDoHZsOMq25Zw5c+jbt9ppW4MS7bkwsy/LnAtXorKuF1cQ9EnuE94WTy8DD9YwzknsvuLfxeE2SzGzRmaWXXwfOAWYGev6IiIiIiI1UWHXC3d/AHjAzK5297/V8n7vAp41s8uAJcDZAGbWAXjU3YcDbYEXLTiNMgV42t3fqGx9EREREZHaUmGibGaDgaXFSXJ4Nb5RwPfAOHffUN2duvt6grGZy5avAIaH9xcSjNkc8/oiIiIiIrWlsq4X/wR2ApjZcQRHcZ8ENgMPxz80EREREZHEqWzUi+SIo8bnAg+7+0RgoplNi3tkIiIiIiIJVNkR5WQzK06kTwTejVgWy4VKRERERET2WpUlyhOA983sZWA78CGAmfUk6H4hIiIiIhKTF198ETNj7ty5ACxevJgDDjggwVFVrsJE2d3/CNwAPAEc47sHXE4Cro5/aCIiIiLSUEyYMIFjjjmGZ555JtGhxKzSS1i7+6fu/qK7b4som+/uX8U/NBERERFpCHJzc/noo4947LHHGk6iLCIiIiJSUy+99BLDhg1j//33p0WLFnz11d5xzFUn5YmIiIjsI+w2i9u2/Xde4bIJEyZw3XXXAXDeeecxYcIEfvGLX8QtltqiRFlERERE4mb9+vW8++67zJw5EzOjsLAQM+PnP/95okPbI3W9EBEREZG4ef7557nooov4/vvvWbx4MUuXLqV79+4sW7Ys0aHtkY4oi4iIiOwjKuseES8TJkxg7NixpcpGjRrFHXfcUeexVJUSZRERERGJm5ycnHJl11xzDddcc03dB1NF6nohIiIiIhKFEmURERERkSiUKIuIiIiIRKFEWUREREQkCiXKIiIiIiJRKFEWEREREYlCibKIiIiIxFVycjIDBw7koIMO4pBDDuHjjz+usO5RRx0FwOLFi3n66adLyqdNm8bkyZNL5p944gmuuuqq+AWNEmURERERibPMzEymTZvG9OnTufPOO7n55pvL1SksLAQoSaL3lCjXBSXKIiIiIlJntmzZQvPmzYHgYiRDhw7lggsu4MADDwSgcePGAIwdO5YPP/yQgQMHcvfdd/Pb3/6W//73vwwcOJD//ve/pba5du1aRo0axeDBgxk8eDAfffRRrcSqK/OJiIiISFxt376dgQMHkp+fz8qVK3n33XdLln322WfMnDmT7t27l1rnrrvu4t577+XVV18FoG3btnzxxRf8/e9/B4KuF8WuvfZarr/+eo455hiWLFnCqaeeypw5c2octxJlERERkX2FWfy27V7houKuFwCffPIJF110ETNnzgTgsMMOK5ckV9Xbb7/N7NmzS+a3bNnC1q1byc7OrtF2lSiLiIiISJ058sgjWbduHWvXrgWgUaNGNd5mUVERn3zyCZmZmTXeViT1URYRERGROjN37lwKCwtp2bJlpfWys7PZunVrhfORTjnllJIuGUDJ0euaUqIsIiIisq9wj99UieI+ygMHDuTcc89l/PjxJCcnV7rOgAEDSElJ4aCDDuK+++5j6NChzJ49O+rJfH/961/54osvGDBgAP369eOhhx6q8VMF6nohIiIiInFWPPRbWUOGDGHIkCGlynJzcwFITU3lnXfeKbXs888/LzV/ySWXANCqVatyyXNtSMgRZTNrYWZvmdm34W3zKHV6m9m0iGmLmV0XLhtnZssjlg2v8wchIiIiIg1aorpejAXecfdewDvhfCnuPs/dB7r7QOBQIA94MaLKfcXL3b1uR58WERERkQYvUYnyCGB8eH88cOYe6p8IfOfu38czKBERERGRYolKlNu6+0qA8LbNHuqfB0woU3aVmc0ws8ejdd0QEREREakJ8z2cpVjtDZu9DbSLsugWYLy7N4uou9Hdoya7ZpYGrAD6u/vqsKwtsA5w4A9Ae3cfU8H6lwOXA7Ru3frQZ599ttqPSeqH3Nzckstbyt5NbdkwqB0bBrVjw1G2LZs2bUrPnj0TGFH9sWDBAjZv3lyqbOjQoV+6+6Bo9eM26oW7n1TRMjNbbWbt3X2lmbUH1lSyqdOAr4qT5HDbJffN7BHg1UrieBh4GKB3795e9sxK2fvk5OSUO0NW9k5qy4ZB7dgwqB0bjrJtOWfOnBpfoa6hyMjI4OCDD465fqK6XkwCLg7vXwy8XEnd8ynT7SJMrouNBGbWanQiIiIiUivWr19fMoZyu3bt6NixY8n8kiVLGDFiBL169aJHjx5ce+217Ny5s2Tdzz77jOOOO47evXvTp08ffvKTn5CXl1dnsScqUb4LONnMvgVODucxsw5mVjKChZllhctfKLP+n8zsGzObAQwFrq+bsEVERESkKlq2bMm0adOYNm0aV155Jddffz3Tpk3j66+/ZvTo0Zx55pl8++23zJ8/n9zcXG655RYAVq9ezdlnn83dd9/NvHnzmDNnDsOGDavw6nzxkJALjrj7eoKRLMqWrwCGR8znAeWub+juP45rgCIiIiISV++++y4ZGRlceumlACQnJ3PffffRvXt3brvtNh588EEuvvhijjzySADMjNGjR9dpjLqEtYiIiIjUuVmzZnHooYeWKmvSpAldunRhwYIFzJw5s9zyuqZLWIuIiIjsK562+G37gqqNpObumJWPp6LyRNARZRERERGpc/379+eLL74oVbZlyxaWLl1Kjx496N+/P19++WWCogsoURYRERGROnfiiSeSl5fHk08+CUBhYSE33HADl1xyCVlZWVx11VWMHz+eqVOnlqzzn//8h1WrVtVZjOp6ISIiIrKvqGL3iHgyM1588UV+/vOf84c//IGioiKGDx/OHXfcAUDbtm155plnuPHGG1mzZg1JSUkcd9xxnHXWWXUWoxJlEREREakT48aNKzXfuXNnXnnllQrrH3nkkXz44Ydxjqpi6nohIiIiIhKFEmURERERkSiUKIuIiIiIRKFEWUREREQkCiXKIiIiIiJRKFEWEREREYlCibKIiIiIxM2QIUN48803S5Xdf//9DB8+nMzMTAYOHEi/fv246KKL2LVrV4KijE6JsoiIiIjEzfnnn88zzzxTquyZZ57h5ptvpkePHkybNo1vvvmGZcuW8eyzzyYoyuiUKIuIiIhI3IwePZpXX32V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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "nbins = 5000                                                # number of bins to explore the hyperparameter \n",
    "lams = np.logspace(-10,7,nbins)       \n",
    "ridge_coefs = np.ndarray((nbins,6))\n",
    "\n",
    "index = 0\n",
    "for lam in lams:\n",
    "    ridge_reg = Ridge(alpha=lam)\n",
    "    ridge_reg.fit(X_train, y_train) # fit model\n",
    "    ridge_coefs[index,:] = ridge_reg.coef_\n",
    "    index = index + 1\n",
    "    \n",
    "color = ['black','blue','green','red','orange','grey']\n",
    "plt.subplot(111)\n",
    "for ifeature in range(0,6):\n",
    "    plt.semilogx(lams,ridge_coefs[:,ifeature], label = df_mv.columns[ifeature], c = color[ifeature], linewidth = 3.0)\n",
    "\n",
    "plt.title('Standardized Model Coefficients vs. Lambda Hyperparameter'); plt.xlabel('Lambda Hyperparameter'); plt.ylabel('Standardized Model Coefficients')\n",
    "plt.xlim(1.0e-10,1.0e7); plt.ylim(-1.0,1.0); plt.grid(); plt.legend(loc = 'lower right')\n",
    "\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=1.5, top=1., wspace=0.2, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Ridge regression is quite different in the response of predictor feature to change in the lambda hyperparameter.\n",
    "\n",
    "* there is no selective removal of predictor features as the lambda hyperparameter increases\n",
    "\n",
    "* a major component is uniform shrinkage of all coefficients towards zero for $\\lambda \\in [10^1, 10^5]$\n",
    "\n",
    "Let's check the mode performance for both models over the hyperparameters. We check the mean squared error and the variance explained for:\n",
    "\n",
    "* linear regression\n",
    "\n",
    "* ridge regression \n",
    "\n",
    "* the lasso"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "nbins = 100                                               # number of bins\n",
    "lams = np.logspace(-14,6,nbins)                           # assign equal bins in log space\n",
    "ridge_error = []; lasso_error = []; linear_error = []\n",
    "ridge_r2 = []; lasso_r2 = []; linear_r2 = []\n",
    "\n",
    "linear_reg = LinearRegression()\n",
    "linear_reg.fit(X_train, y_train) # fit model\n",
    "linear_predict = linear_reg.predict(X_test)\n",
    "linear_err = metrics.mean_squared_error(y_test[\"Production\"],linear_predict)\n",
    "linear_r = metrics.r2_score(y_test[\"Production\"],linear_predict)\n",
    "\n",
    "index = 0\n",
    "for lam in lams:\n",
    "    ridge_reg = Ridge(alpha=lam)\n",
    "    ridge_reg.fit(X_train, y_train) # fit model\n",
    "    ridge_predict = ridge_reg.predict(X_test)\n",
    "    ridge_error.append(metrics.mean_squared_error(y_test[\"Production\"],ridge_predict))\n",
    "    ridge_r2.append(metrics.r2_score(y_test[\"Production\"],ridge_predict))\n",
    "    lasso_reg = Lasso(alpha=lam)\n",
    "    lasso_reg.fit(X_train, y_train) # fit model\n",
    "    lasso_predict = lasso_reg.predict(X_test)\n",
    "    lasso_error.append(metrics.mean_squared_error(y_test[\"Production\"],lasso_predict))\n",
    "    lasso_r2.append(metrics.r2_score(y_test[\"Production\"],lasso_predict))\n",
    "    linear_error.append(linear_err)\n",
    "    linear_r2.append(linear_r)\n",
    "    index = index + 1\n",
    "    \n",
    "plt.subplot(121)\n",
    "plt.scatter(lams,linear_error,color='black',alpha=0.6,s=20,edgecolor='black',label='Linear')\n",
    "plt.scatter(lams,ridge_error,color='blue',alpha=0.6,s=20,edgecolor='black',label='Ridge')\n",
    "plt.scatter(lams,lasso_error,color='red',alpha=0.6,s=20,edgecolor='black',label='LASSO')\n",
    "plt.plot(lams,linear_error,lw=1,alpha=0.3,color='black')\n",
    "plt.plot(lams,ridge_error,lw=1,alpha=0.3,color='blue')\n",
    "plt.plot(lams,lasso_error,lw=1,alpha=0.3,color='red')\n",
    "plt.title('Testing MSE vs. Lambda Hyperparameter'); plt.xlabel('Lambda Hyperparameter'); plt.ylabel('Mean Square Error')\n",
    "plt.xlim(1.0e-14,1.0e6); plt.xscale('log'); plt.grid(); plt.legend(loc = 'upper left')\n",
    "\n",
    "plt.subplot(122)\n",
    "plt.scatter(lams,linear_r2,color='black',alpha=0.6,s=20,edgecolor='black',label='Linear')\n",
    "plt.scatter(lams,ridge_r2,color='blue',alpha=0.6,s=20,edgecolor='black',label='Ridge')\n",
    "plt.scatter(lams,lasso_r2,color='red',alpha=0.6,s=20,edgecolor='black',label='LASSO')\n",
    "plt.plot(lams,linear_r2,lw=1,alpha=0.3,color='black')\n",
    "plt.plot(lams,ridge_r2,lw=1,alpha=0.3,color='blue')\n",
    "plt.plot(lams,lasso_r2,lw=1,alpha=0.3,color='red')\n",
    "plt.title('Testing Variance Explained vs. Lambda Hyperparameter'); plt.xlabel('Lambda Hyperparameter'); plt.ylabel('Variance Explained (R2)')\n",
    "plt.xlim(1.0e-14,1.0e6); plt.xscale('log'); plt.ylim(0.0,1.0); plt.grid(); plt.legend(loc = 'lower left')\n",
    "\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.0, top=1.5, wspace=0.2, hspace=0.2)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This is quite interesting. Let's make some observations.\n",
    "\n",
    "* linear regression does not have the shrinkage term, nor the lambda parameter so the performance is constant\n",
    "\n",
    "* for this problem linear regression is the best performer, lowest testing mean square error and higher testing variance explained\n",
    "\n",
    "* at a low lambda value, ridge regression and the lasso approach linear regression"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Model Variance \n",
    "\n",
    "Now for our linear, ridge and LASSO regression models, let's explore the concept of model variance, an important part of machine learning accuracy in testing. \n",
    "\n",
    "* the sensitivity of the model to the specfic training data\n",
    "* as lambda increases the sensitivity to the training data, model variance decreases\n",
    "\n",
    "Let's demonstrate this with this workflow:\n",
    "\n",
    "* loop over multiple lambda values\n",
    "    * loop over multiple bootstrap samples of the data\n",
    "        * calculate the linear, ridge and LASSO regression fit (first predictor feature slope parameter)\n",
    "    * calculate the variance over these bootstrap model fits (first predictor feature slope parameter) \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ftx9992kpKSwYMECysqMhuucnBwuvvhiUlNTmT17NgcPHjxlmytWrODVV1/tuP/qq6+yYsUK8vLymD17NikpKaSkpHQknxs3bmT+/Plcc801TJkypWP/YExbs2DBAlJSUpgyZQrvvvsuYLRgTpw4kZtvvpnJkyezcOFCGhoaADh06BAXXHAB06ZNIyUlhZycHAAef/xxZsyYwdSpU3nggQcGfGzd3NyYOXMmhYWFHfF/97vfBaCiooKFCxcyffp0br31VoxrHIZf//rXTJgwgQsvvJAVK1bwxBNP2HxMhRBCCCFcUnspL0hiKoaNPhNTrfUVWusTWusHgfuAfzLIVkul1C+BVuCl9kXd7bqX5T1t9xal1Dal1Lb2pM2VLFy4kPz8fMaNG8ftt9/Opk2bTlmnqKiIe+65h88//5xdu3axdetW3nnnHQDq6upISUlhx44dzJ07l4ceegiAW265haeeeort27fzxBNPcPvtt5+y3auuuop33nmH1lajwfq1115j+fLlhIeH8+mnn7Jjxw5ee+21k8pf09PTefTRRzlw4MBJ2/Ly8uLtt99mx44dbNiwgbvvvrsj2cvOzuaOO+5g//79BAYG8uabbwKwcuVK7rjjDnbv3s2WLVuIjIxk/fr1ZGdnk56ezq5du9i+fTubNw9sTK3Gxka+/fZbLr741Ervhx56iFmzZrFz504uv/xyjh49Chjlvm+++SY7d+7krbfeOqmU2pZjKoQQQgjhclpajMGOvKxjlkoprxgmeh2VVyllAvZorZMAtNanZlL9pJS6HvgusED/r+mqAOhc0xqD0SpbwP/KfTsv75bW+hngGYC0tLQeE1hn8fPzY/v27XzxxRds2LCBq6++mscee4wbbrihY52tW7cyb948wsLCACOh27x5M4sXL8ZkMnH11VcDcO2117JkyRJqa2vZsmULy5Yt69hGUzdXxUaOHMnkyZP573//S0REBGazmaSkJKqqqvjhD3/Irl27cHNzIysrq+M5M2fOZNSoUadsS2vNqlWr2Lx5MyaTicLCQkpKSgAYNWoUycnJAKSmppKXl0dNTQ2FhYVcccUVgJHYAqxfv57169czffp0wGiJzc7OZs6cOTYf05ycHJKTk8nOzubKK69k6tSpp6yzefNm3nrrLQAuvfRSgoKCAPjyyy9ZtGgR3t7eAFx22WUdcdhyTIUQ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du3qc/32ct6IiAhWrFgBwJNPPklERAS7d+/GYrF0JI0Avt11ngdeeuklysrK2L59O2azmYSEBBqt5SHtZcrtr7WhoaHH16S15t577+XWW2/tMea3336bhx4yBoN+9tlnSUtL6/N1vvbaa1RWVnYk1dXV1bz66qs88sgjAERFRXHTTTdx0003kZSUxL59+0hNTcXPz48lS5awZMkSTCYTH374IdOmTePNN988afvV1dXk5+eTmJjYZyxCCCGEEEOithbCw3t+vL2c18dn6GISoh/O7MS0jyTS3jIzMzGZTIwdOxaAXbt2ER8ff9I6Z511FnfddRfl5eUEBQXxyiuvdAzQY7FYeOONN1i+fDkvv/wys2bNIiAggFGjRrFu3TqWLVuG1po9e/Ywbdq0U/a/dOlSVq1ahY+PD59//jkAVVVVxMTEYDKZWLt2bcdAR72pqqoiPDwcs9nMhg0bOHLkSK/rBwQEEBMTwzvvvMPixYtpamqira2Niy66iPvuu4+VK1fi5+dHYWEhZrOZ8E4fqldccUVHS6utXnnlFT7++OOOEXkPHz7MhRdeyCOPPMLHH3/MggULMJvNHDt2jIqKCqKjo/nqq6+YNGkSQUFBNDc3c+DAAebNm8eCBQv4xS9+wfPPP891111HW1sbd999NzfccAM+8sEuhBBCCFdRWwvdVLp1aB+ZV76/CBd1ZiemQ6y2tpY777yTEydO4O7uzpgxY3jmmWdOWicyMpI1a9Ywf/58tNZccsklLFq0CDBaMPfv309qaiojRozgtddeA4wWzNtuu41HHnmElpYWli9f3m1iGhgYyNlnn01JSUlHa+Ltt9/O0qVLWbduHfPnz++xlbSzlStXctlll5GWlkZycjITJkzo8zkvvPACt956K/fffz9ms5l169axcOFCMjIyOhJIPz8/XnzxxZMS075kZmaeNJjRXXfdxdGjRzn77LM7lo0aNYqAgAC+/fZb1q9fz1133dXRMvz4448zcuRI1q9fz2233YbWGovFwqWXXsrSpUtRSvH2229z++238+tf/xqLxcIll1zC6tWrbY5RCCGEEMLheivlBRmZV7g81VfpqDI60q0ERmutH1ZKxQEjtda2T4DpBGlpabrrvKAZGRlMnDjRSRENnp+fX8fcmsL1DPfzSwghhBDDVGMjbNoEF13U8zp79kBAACQkDFlY4syi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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "L = 100                                                     # the number of bootstrap realizations \n",
    "nsamples = 40                                               # the number of samples in each bootstrap realization\n",
    "nlambda = 40                                               # number of lambda values to evaluate\n",
    "\n",
    "coef_mat_linear = np.zeros(L)                                      # declare arrays to store the results\n",
    "variance_coef_linear = np.zeros(nlambda)\n",
    "\n",
    "coef_mat_ridge = np.zeros(L)                                      # declare arrays to store the results\n",
    "variance_coef_ridge = np.zeros(nlambda)\n",
    "\n",
    "coef_mat_lasso = np.zeros(L)                                      # declare arrays to store the results\n",
    "variance_coef_lasso = np.zeros(nlambda)\n",
    "\n",
    "lamd_mat = np.logspace(-5,5,nlambda)                  \n",
    "for ilam in range(0,len(lamd_mat)):                         # loop over all lambda values                   \n",
    "    for l in range(0, L):                                   # loop over all bootstrap realizations\n",
    "        df_sample = df_mv.sample(n = nsamples)                 # random sample (1 bootstrap)\n",
    "        X_sample = df_sample.drop(['Production'], axis=1)\n",
    "        y_sample = df_sample['Production']\n",
    "        \n",
    "        linear_reg = LinearRegression()\n",
    "        linear_reg.fit(X_sample,y_sample) # fit model\n",
    "        coef_mat_linear[l] = linear_reg.coef_[0]                  # get the slope parameter\n",
    "        \n",
    "        ridge_reg = Ridge(alpha=lamd_mat[ilam])                   # instatiate model\n",
    "        ridge_reg.fit(X_sample,y_sample) # fit model\n",
    "        coef_mat_ridge[l] = ridge_reg.coef_[0]                    # get the slope parameter\n",
    "        \n",
    "        lasso_reg = Lasso(alpha=lamd_mat[ilam])             # instatiate model\n",
    "        lasso_reg.fit(X_sample,y_sample) # fit model\n",
    "        coef_mat_lasso[l] = lasso_reg.coef_[0]                    # get the slope parameter\n",
    "    \n",
    "    variance_coef_linear[ilam] = np.var(coef_mat_linear)                  # calculate the variance of the slopes over the L bootstraps\n",
    "    variance_coef_ridge[ilam] = np.var(coef_mat_ridge)                  # calculate the variance of the slopes over the L bootstraps\n",
    "    variance_coef_lasso[ilam] = np.var(coef_mat_lasso)                  # calculate the variance of the slopes over the L bootstraps\n",
    "    \n",
    "plt.subplot(111)\n",
    "plt.plot(lamd_mat,variance_coef_linear,color='black',lw=1,alpha=0.3,label = 'Slope Variance - Linear')\n",
    "plt.plot(lamd_mat,variance_coef_ridge,color='blue',lw=1,alpha=0.3,label = 'Slope Variance - Ridge')\n",
    "plt.plot(lamd_mat,variance_coef_lasso,color='red',lw=1,alpha=0.3,label = 'Slope Variance - LASSO')\n",
    "plt.scatter(lamd_mat,variance_coef_linear,color='black',alpha=0.6,s=20,edgecolor='black')\n",
    "plt.scatter(lamd_mat,variance_coef_ridge,color='blue',alpha=0.6,s=20,edgecolor='black')\n",
    "plt.scatter(lamd_mat,variance_coef_lasso,color='red',alpha=0.6,s=20,edgecolor='black')\n",
    "\n",
    "plt.title('Model Fit Variance vs. Regularization Hyperparameter (Lambda)'); plt.xlabel('Lambda'); plt.ylabel('Bootstrap Variance of First Predictor Feature Slope Parameter')\n",
    "plt.xlim(0.00001,100000.); plt.xscale('log'); plt.legend(); #plt.ylim(0.001,10.0);\n",
    "plt.subplots_adjust(left=0.0, bottom=0.0, right=2.0, top=1.0, wspace=0.2, hspace=0.2); plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The result is as expected, with increase in lambda hyperparameter the sensitivity of the model to the training data is decreased for ridge and LASSO regression.\n",
    "\n",
    "* I suspect the jump in LASSO regression around lambda = 1000 may be due to model convergence.\n",
    "\n",
    "#### Comments\n",
    "\n",
    "LASSO regression is a variant of linear regression that includes a hyperparameter to constrain the degree of model fit.  This allow us to tune the variance-bias trade-off of our model. I hope this was helpful,\n",
    "\n",
    "*Michael*\n",
    "\n",
    "Michael Pyrcz, Ph.D., P.Eng. Associate Professor The Hildebrand Department of Petroleum and Geosystems Engineering, Bureau of Economic Geology, The Jackson School of Geosciences, The University of Texas at Austin\n",
    "On twitter I'm the @GeostatsGuy.\n",
    "\n",
    "\n",
    "***\n",
    "\n",
    "#### More on Michael Pyrcz and the Texas Center for Geostatistics:\n",
    "\n",
    "### Michael Pyrcz, Associate Professor, University of Texas at Austin \n",
    "*Novel Data Analytics, Geostatistics and Machine Learning Subsurface Solutions*\n",
    "\n",
    "With over 17 years of experience in subsurface consulting, research and development, Michael has returned to academia driven by his passion for teaching and enthusiasm for enhancing engineers' and geoscientists' impact in subsurface resource development. \n",
    "\n",
    "For more about Michael check out these links:\n",
    "\n",
    "#### [Twitter](https://twitter.com/geostatsguy) | [GitHub](https://github.com/GeostatsGuy) | [Website](http://michaelpyrcz.com) | [GoogleScholar](https://scholar.google.com/citations?user=QVZ20eQAAAAJ&hl=en&oi=ao) | [Book](https://www.amazon.com/Geostatistical-Reservoir-Modeling-Michael-Pyrcz/dp/0199731446) | [YouTube](https://www.youtube.com/channel/UCLqEr-xV-ceHdXXXrTId5ig)  | [LinkedIn](https://www.linkedin.com/in/michael-pyrcz-61a648a1)\n",
    "\n",
    "#### Want to Work Together?\n",
    "\n",
    "I hope this content is helpful to those that want to learn more about subsurface modeling, data analytics and machine learning. Students and working professionals are welcome to participate.\n",
    "\n",
    "* Want to invite me to visit your company for training, mentoring, project review, workflow design and / or consulting? I'd be happy to drop by and work with you! \n",
    "\n",
    "* Interested in partnering, supporting my graduate student research or my Subsurface Data Analytics and Machine Learning consortium (co-PIs including Profs. Foster, Torres-Verdin and van Oort)? My research combines data analytics, stochastic modeling and machine learning theory with practice to develop novel methods and workflows to add value. We are solving challenging subsurface problems!\n",
    "\n",
    "* I can be reached at mpyrcz@austin.utexas.edu.\n",
    "\n",
    "I'm always happy to discuss,\n",
    "\n",
    "*Michael*\n",
    "\n",
    "Michael Pyrcz, Ph.D., P.Eng. Associate Professor The Hildebrand Department of Petroleum and Geosystems Engineering, Bureau of Economic Geology, The Jackson School of Geosciences, The University of Texas at Austin\n",
    "\n",
    "#### More Resources Available at: [Twitter](https://twitter.com/geostatsguy) | [GitHub](https://github.com/GeostatsGuy) | [Website](http://michaelpyrcz.com) | [GoogleScholar](https://scholar.google.com/citations?user=QVZ20eQAAAAJ&hl=en&oi=ao) | [Book](https://www.amazon.com/Geostatistical-Reservoir-Modeling-Michael-Pyrcz/dp/0199731446) | [YouTube](https://www.youtube.com/channel/UCLqEr-xV-ceHdXXXrTId5ig)  | [LinkedIn](https://www.linkedin.com/in/michael-pyrcz-61a648a1)\n"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
